// 入口函数
$(function () {
    // 需求1： 获取用户信息渲染头像
    getUserInfo()

    // 需求2 ：退出
    $('#logout').on('click', function () {
        // layui中的询问框，点击确定才会执行回调函数里面的代码
        layer.confirm('是否确认退出?', { icon: 3, title: '提示' }, function (index) {
            //do something
            // 销毁token
            localStorage.removeItem('token')
            // 强制跳转至登录页面
            location.href = '/login.html'
            // 自带代码，关闭询问框
            layer.close(index);
        });
    })
})

// 获取用户信息渲染头像封装成函数
// 要求：必须设置为全局函数，不是局部函数！！！
function getUserInfo() {
    // ajax请求
    axios({
        url: '/my/userinfo',
        method: 'get',
        // 通过请求头设置token身份认证  
        // headers: {
        //     Authorization: localStorage.getItem('token')
    }).then(res => {
        //成功回调
        // console.log(res.data)
        if (res.data.status != 0) {
            return layui.layer.msg(res.data.message)
        }
        // 成功不需要提示，直接渲染头像和欢迎词
        renderAvatar(res.data.data)
    });
}

// 渲染用户信息和头像
function renderAvatar(user) {
    // 渲染欢迎：如果有nicknam优先渲染nickname，没有则渲染username
    // 逻辑运算符短路运算
    let name = user.nickname || user.username
    $('.welcome').html('欢迎&nbsp;' + name)
    //处理头像，如果有图片头像 煊染图片头像，否则渲染文字头像
    if (user.user_pic !== null) {
        // 有图片头像渲染，隐藏文字头像
        $('.avatar-text').hide()
        $('.layui-nav-img').show().attr('src', user.user_pic)
    } else {
        $('.layui-nav-img').hide()
        // 渲染name中的第一个单词字符，并大写
        let first = name[0].toUpperCase()
        $('.avatar-text').show().html(first)
    }
}